package com.lingxu.api.ztb.model;

import com.baomidou.mybatisplus.annotation.TableName;

import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 项目信息表
 * </p>
 *
 * @author admin
 * @since 2025-08-13
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("API_PROJECT_INFO")
@ApiModel(value="ProjectInfo对象", description="项目信息表")
public class ProjectInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "项目名称")
    @TableField("PROJECT_NAME")
    private String projectName;

    @ApiModelProperty(value = "项目编号")
    @TableField("PROJECT_CODE")
    private String projectCode;

    @ApiModelProperty(value = "建设单位")
    @TableField("CONSTRUCTION_UNIT")
    private String constructionUnit;

    @ApiModelProperty(value = "管理类型")
    @TableField("MANAGEMENT_TYPE")
    private String managementType;

    @ApiModelProperty(value = "项目类型（铁路、高速公路、国道、干线航道、水运）")
    @TableField("PROJECT_TYPE")
    private String projectType;

    @ApiModelProperty(value = "建设状态")
    @TableField("CONSTRUCTION_STATUS")
    private String constructionStatus;

    @ApiModelProperty(value = "总投资（亿）")
    @TableField("TOTAL_INVESTMENT")
    private String totalInvestment;

    @ApiModelProperty(value = "建设标准")
    @TableField("CONSTRUCTION_STANDARD")
    private String constructionStandard;

    @ApiModelProperty(value = "项目规模（公里）")
    @TableField("PROJECT_SCALE")
    private String projectScale;

    @ApiModelProperty(value = "项目进度(九大环节)")
    @TableField("PROJECT_PROGRESS")
    private String projectProgress;

    @ApiModelProperty(value = "项目建设起点（经纬度）")
    @TableField("START_POINT")
    private String startPoint;

    @ApiModelProperty(value = "项目建设终点（经纬度）")
    @TableField("END_POINT")
    private String endPoint;

    @ApiModelProperty(value = "项目是否分标段")
    @TableField("IS_SECTIONED")
    private String isSectioned;

    @ApiModelProperty(value = "设计时速（km/h）")
    @TableField("DESIGN_SPEED")
    private String designSpeed;

    @ApiModelProperty(value = "建设周期")
    @TableField("CONSTRUCTION_PERIOD")
    private String constructionPeriod;

    @ApiModelProperty(value = "立项日期")
    @TableField("APPROVAL_DATE")
    private String approvalDate;

    @ApiModelProperty(value = "开工日期")
    @TableField("START_DATE")
    private Date startDate;

    @ApiModelProperty(value = "计划竣工日期")
    @TableField("PLAN_END_DATE")
    private Date planEndDate;

    @ApiModelProperty(value = "计划完成时间")
    @TableField("PLAN_COMPLETION_DATE")
    private String planCompletionDate;

    @ApiModelProperty(value = "项目是否完成或提前结束")
    @TableField("IS_COMPLETED_OR_ADVANCED")
    private String isCompletedOrAdvanced;

    @ApiModelProperty(value = "实施主体")
    @TableField("UNIT")
    private String unit;

    @ApiModelProperty(value = "标段总数")
    @TableField("BDNUMBER")
    private BigDecimal BDNUMBER;

    @ApiModelProperty(value = "已完成投资额")
    @TableField("YWCTZE")
    private BigDecimal YWCTZE;

}
